﻿using Basic.FormModel.DB;
using Basic.FormRemoteModel;
using Basic.FormRemoteModel.Form.Model;
using WeDonekRpc.Model;

namespace Basic.FormDAL
{
    public interface ICustomFormDAL : IBasicDAL<DBCustomForm, long>
    {
        DBCustomForm Add ( FormAdd form );
        void Drop ( long id );
        void LockForm ( LockFormArg arg );
        Result[] Query<Result> ( FormQuery query, IBasicPage paging, out int count ) where Result : class;
        void SetLayoutType ( long id, FormLayoutType layout );
        void SetStatus ( DBCustomForm form, FormStatus status );
    }
}